

package com.zdsx.controller;

import com.zdsx.annotation.Login;
import com.zdsx.common.exception.CommonException;
import com.zdsx.common.exception.ErrorCode;
import com.zdsx.common.page.PageData;
import com.zdsx.common.utils.Result;
import com.zdsx.dto.GasmeterTypeDTO;
import com.zdsx.dto.ProductInfoDTO;
import com.zdsx.service.ProductService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;

import javax.validation.Valid;
import java.util.List;
import java.util.Map;


/**
 * 产品
 *
 * @author Lr
 * @since 1.0.0
 */
@RestController
@RequestMapping("wx")
@Api(tags = "中电赛西产品")
@AllArgsConstructor
public class ProductController {

    private final ProductService productService;

    /**
     * 查询产品列表： 查全部的产品（在编辑角色的时候使用）
     *   分类编号（1普通，2光电） 产品编号 产品名称 图片 描述（没用上）
     * @return null
     */
    @Login
    @GetMapping("product/list")
    @ApiOperation(value = "获取用户产品列表")
    public Result<List<ProductInfoDTO>> list(@ApiIgnore @RequestAttribute("userId") Long userId) {
        List<ProductInfoDTO> productInfoDTOS = productService.productList(userId);
        return new Result<List<ProductInfoDTO>>().ok(productInfoDTOS);
    }


    // 燃气表类型
    // 真兰和安然？
    @Login
    @GetMapping("gasmeter/list")
    @ApiOperation(value = "获取燃气表类型列表")
    public Result<List<GasmeterTypeDTO>> gasmeterList(@ApiIgnore @RequestAttribute("userId") Long userId) {
        List<GasmeterTypeDTO> productInfoDTOS = productService.gasmeterList();
        return new Result<List<GasmeterTypeDTO>>().ok(productInfoDTOS);
    }

}